Unless otherwise indicated herein, the materials described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
With the advance of networking and data storage technologies, an increasingly large number of computing services are being provided to users or customers by cloud-based datacenters that can enable access to computing resources at various levels. Cloud-based service providers may provide individuals and organizations with a range of solutions for systems deployment and operation. Depending on customer needs, datacenter capabilities, and associated costs, services provided to customers may be defined by Service Level Agreements (SLAs) describing aspects such as server latency, storage limits or quotas, processing power, scalability factors, backup guarantees, uptime guarantees, resource usage reporting, and similar ones.
The success of cloud-based services means that more and more applications are being moved to the cloud. Customers (or tenants) typically prefer to have the option of moving applications from one service provider to another while maintaining service parameters like performance, cost, liability, and similar ones. Service providers may prefer to have the option of moving an application from one site to another while maintaining performance and service level of the application.
Core service parameters such as server processing, memory, and networking may be implemented in a wide variety of ways by different service providers. Indeed, it is unlikely that the computing environment of one service provider may be a copy of the environment of another service provider. While measurement of parameters such as the application response time at an original service provider may be a straight forward process, it does not provide any guidance to a new service provider on how to plan their system resource allocation for a migrating application.